home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 October
/
EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso
/
Aminet
/
dev
/
m2
/
ModGen.lha
/
ModGen
/
Source
/
MGTools.def
< prev
next >
Wrap
Text File
|
1995-04-17
|
4KB
|
99 lines
(*---------------------------------------------------------------------------
:Program. MGTools.def
:Contents. Modula-2 SourceCode Generator für GadgetToolsBox 2.x
:Author. Frank Lömker
:Copyright. FreeWare
:Language. Modula-2
:Translator. Turbo Modula-2 V1.40
:Imports. GadToolsBox [Jan van den Baard]
:History. 1.0 [Frank] 17-Apr-95
:History. ModGen basiert direkt auf OG V37.11 von Thomas Igracki
:History. und GenOberon V1.0 von Kai Bolay und Jan van den Baard.
:Bugs. keine bekannt
---------------------------------------------------------------------------*)
DEFINITION MODULE MGTools;
FROM SYSTEM IMPORT LONGSET,ADDRESS,STRING;
IMPORT G:= Graphics, d:= Dos, gtx:= GadToolsBox;
TYPE str32=ARRAY [0..31] OF CHAR;
str256=ARRAY [0..255] OF CHAR;
Pstr256=POINTER TO str256;
CONST GenOpenFont = 1;
SysFont = 2;
raster=3;
mouse=4;
port=5;
icon=6;
VAR args : RECORD
name,baseName, (* GUI file name, DestName *)
screenPtr: Pstr256; (* name for the ScreenFile *)
openfont, sysfont, (* Gen OpenFont ?, Use SysFont ? *)
raster, (* background pattern ? *)
mouse, (* Open window under the mouse ? *)
port, (* Use one IDCMPPort ? *)
icon, nogui: LONGINT;(* Create Icons?, Open no Requester? *)
opts: Pstr256; (* openfont, sysfont, raster, ..? *)
END;
source,dest,screen:str256;
file,fdef : d.FileHandlePtr;
GuiData : gtx.GUIDATA;
MainConfig: gtx.GadToolsConfig;
Projects : gtx.WindowList;
MConfig : LONGSET; (*RECORD configFlags0,configFlags1: LONGSET END; *)
GetFilePresent,ListViewPresent,GetFileInWindow: BOOLEAN;
PROCEDURE FPrintF (fh: d.FileHandlePtr;format:STRING;a1: ADDRESS);
PROCEDURE FPrintF2 (fh:d.FileHandlePtr;format:STRING;a2,a1: ADDRESS);
PROCEDURE FPrintF3 (fh:d.FileHandlePtr;format:STRING;a3,a2,a1: ADDRESS);
PROCEDURE FPrintF4 (fh:d.FileHandlePtr;format:STRING;a4,a3,a2,a1: ADDRESS);
PROCEDURE FPrintF5 (fh:d.FileHandlePtr;format:STRING;a5,a4,a3,a2,a1: ADDRESS);
PROCEDURE FPutS (fh: d.FileHandlePtr; str : STRING);
PROCEDURE FPutS2 (str : STRING);
(* Check for the presence of GETFILE and joined LISTVIEWS.
This routine is called for each window that get's generated. *)
PROCEDURE CheckItOut (pw: gtx.ProjectWindowPtr);
(* Check for the presence of GETFILE at all *)
PROCEDURE CheckGetFile;
(* Write DisplayID flags. *)
PROCEDURE WriteIDFlags (flags: LONGSET);
(* Write the IntuiText drawmode flags. *)
PROCEDURE WriteDrMd (drmd: SHORTSET);
(* Write the NewMenu structures. *)
PROCEDURE WriteMenus (end:BOOLEAN);
(* Write the GadgetID defines. *)
PROCEDURE WriteID ();
(* Check FOR OpenFont source genertion. *)
PROCEDURE CheckFont(): BOOLEAN;
(* Init the Windowcoordinates. *)
PROCEDURE InitCoords;
(* Write the necessary globals. *)
PROCEDURE WriteGlob (scr,win:BOOLEAN);
(* Write the Cycle and Mx lables. *)
PROCEDURE WriteLabels (end:BOOLEAN);
PROCEDURE WriteList();
(* Write a ListView List/Node initialisation *)
PROCEDURE WriteNodes (pw: gtx.ProjectWindowPtr; pnum: INTEGER);
(* Write the TextAttr structure *)
PROCEDURE WriteTextAttr (scr,end:BOOLEAN);
(* Write the Window Tags. *)
PROCEDURE WriteWindow (pw: gtx.ProjectWindowPtr);
(* Write the Screen Tags and screen specific data. *)
PROCEDURE WriteSTags (end:BOOLEAN);
(* Write the Modula IntuiText structures. *)
PROCEDURE WriteIText();
(* Write the NewGadget arrays. *)
PROCEDURE WriteGArray (end:BOOLEAN);
PROCEDURE WriteGadHeader (pw: gtx.ProjectWindowPtr);
(* Write the routine header. *)
PROCEDURE WriteHeader (pw: gtx.ProjectWindowPtr);
(* Write the gadget type array. *)
PROCEDURE WriteGTypes (end:BOOLEAN);
(* Write the gadget tagitem array. *)
PROCEDURE WriteGTags (end:BOOLEAN);
(* Write the Modula Gadgets initialization. *)
PROCEDURE WriteGadgets (pw: gtx.ProjectWindowPtr);
END MGTools.